정적 페이지 웹 호스팅 - 1. S3로 정적 웹 호스팅하기

정적 페이지 웹 호스팅

정적 웹 호스팅하기 위한 방법은 다양합니다. Netlfiy, Github Page를 이용하여 제한적이지만 무료 웹 호스팅이 가능합니다.

AWS에서 S3부터 Route53, CloudFront 설정까지 웹 호스팅 설정하는 법을 하나씩 알려드리겠습니다.

1. S3 정적 웹 호스팅 설정하기

Amazon S3에서 정적 웹 사이트를 호스팅할 수 있습니다. 정적 웹 사이트에서 개별 웹 페이지는 정적 콘텐츠를 포함합니다. 정적 웹 사이트에는 클라이언트 측 스크립트가 포함될 수도 있습니다. 이와는 대조적으로, 동적 웹 사이트는 PHP, JSP 또는 ASP.NET 등 서버 측 스크립트를 포함한 서버 측 처리에 의존합니다. Amazon S3에서는 서버 측 암호화가 지원되지 않습니다.

자세한건 AWS 공식 문서를 보시는걸 추천합니다.

1-1. 버킷 만들기

버킷 만들 때 접속할 도메인 이름으로 만듭니다.

s3-webhosting01

1-2. 속성 설정하기

버킷을 만들고 해당 버킷의 속성을 확인 → 정적 웹 사이트 호스팅을 설정합니다.

s3-02

정적 웹 호스팅 설정에서 인덱스 문서, 오류 문서 설정합니다. 여기에선 오류문서도 index.html로 설정했습니다. 본인의 커스텀한 에러 문서를 설정하면 해당 에러문서 파일을 적으면 됩니다.

엔드 포인트는 보통 다음 처럼 표시됩니다.

http://{S3버킷이름}.s3-websites.ap-northeast-2.amazonaws.com

s3-03

1-3. 권한 설정하기

퍼블릭 엑세스 차단을 전부 비활성화합니다.

s3-04

버킷 정책에서 버킷 정책 편집기를 사용하여 버킷 정책을 만듭니다.

s3-05

본 화면에선 정책이 있지만 실제 처음 만들때는 비어있을 겁니다.

버킷 정책기

버킷 정책기에서 하나씩 입력합시다.

s3-06

Step1: Select Policy Type

  • Select Type of Policy: S3 Bucket Policy를 선택합니다.

Step2: Add Statement(s)

  • Effect: Allow 선택.
  • Principal: 외부에 퍼블릭으로 공개할 예정이니 * 입력합니다.
  • AWS Service: Amazon S3 선택.
  • Actions: 조회하는 형태만 오픈으로 설정할거니 ‘GetObject’ 액션하나만 선택합니다.
  • ARN: 버킷 정책에서 봤던 ARN을 그대로 입력합니다.

빨간 네모칸 안 ARN: arn ~~~~ 을 그대로 복사.

s3-07

Generate Policy를 클릭하면 JSON 형태로 정책이 생성됩니다. 그대로 복사하여 버킷 정책 편집기에 붙여넣고 저장합니다.

정상적으로 버킷 정책을 설정했다면 버킷 웹 사이트 엔드포인트로 접근하면 됩니다.

여기까지 보느라 고생하셨습니다. 다음은 Route53 설정해보겠습니다!! 😋


Written by@Sunny Son
개발자는 오늘도 뚠뚠

GitHubFacebook